Disassembly of section .data:

08049054 <getchar>:
 8049054:       b8 03 00 00 00          mov    eax,0x3
 8049059:       bb 00 00 00 00          mov    ebx,0x0
 804905e:       b9 b1 90 04 08          mov    ecx,0x80490b1
 8049063:       ba 01 00 00 00          mov    edx,0x1
 8049068:       cd 80                   int    0x80
 804906a:       83 f8 01                cmp    eax,0x1
 804906d:       75 06                   jne    8049075 <getchar.getchar_fail>
 804906f:       a1 b1 90 04 08          mov    eax,ds:0x80490b1
 8049074:       c3                      ret

08049075 <getchar.getchar_fail>:
 8049075:       b8 ff ff ff ff          mov    eax,0xffffffff
 804907a:       c3                      ret

0804907b <putchar>:
 804907b:       a3 b1 90 04 08          mov    ds:0x80490b1,eax
 8049080:       b8 04 00 00 00          mov    eax,0x4
 8049085:       bb 01 00 00 00          mov    ebx,0x1
 804908a:       b9 b1 90 04 08          mov    ecx,0x80490b1
 804908f:       ba 01 00 00 00          mov    edx,0x1
 8049094:       cd 80                   int    0x80
 8049096:       c3                      ret

08049097 <_start>:
 8049097:       e8 b8 ff ff ff          call   8049054 <getchar>
 804909c:       83 f8 ff                cmp    eax,0xffffffff
 804909f:       74 07                   je     80490a8 <_start.done>
 80490a1:       e8 d5 ff ff ff          call   804907b <putchar>
 80490a6:       eb ef                   jmp    8049097 <_start>

080490a8 <_start.done>:
 80490a8:       89 c3                   mov    ebx,eax
 80490aa:       b8 01 00 00 00          mov    eax,0x1
 80490af:       cd 80                   int    0x80

080490b1 <buf>:
 80490b1:       ff                      (bad)
 80490b2:       ff                      (bad)
 80490b3:       ff                      (bad)
 80490b4:       ff                      (bad)
